
# 面向对象 : self
"""
说明 ：
    1. 在类中，第一个参数必须是对象自己 ，self就代表的是对象自己 。但是它是可以修改的。
    2 . 谁掉用我，我就代表谁 。比如 ：bug1调用方法，方法中的self就是bug1 ，bug2调用方法，方法中的self就是bug2
"""


class Bugs():

    # 定义属性
    product = 'tpshop'
    project = 'tpshop_front'
    version = 1.0

    # 定义功能
    def create_bug(self):
        # 在此方法中访问search_bug这个方法
        self.search_bug('abc')

    def update_bug(self):
        pass

    def delete_bug(self):
        pass

    def search_bug(self,title):
        print("self:{}".format(self))
        db_bugs = [
            {'bug_id': 1, 'bug_title': '学生列表页使用学生名称进行搜索 结果不正确', 'bug_project': self.project, 'version': 1.0},
            {'bug_id': 2, 'bug_title': '和方法开始减肥盛世嫡妃', 'bug_project': 'tpshop', 'version': 1.0},
            {'bug_id': 3, 'bug_title': '导出的数据中字段(执勤单位)数据显示错误', 'bug_project': 'wx', 'version': 1.0},
            {'bug_id': 4, 'bug_title': '学生列表sdfsdfsdfsdfsdf', 'bug_project': 'wx', 'version': 1.0},
            {'bug_id': 5, 'bug_title': '学员列表页按照学生名称进行搜索 结果不正确', 'bug_project': 'tpshop', 'version': 1.0}
        ]
        lst = []
        for bug in db_bugs:
            bug_title = bug.get('bug_title')
            if title in bug_title:
                lst.append(bug)
        return lst



bug1 = Bugs()
print("bug1:{}".format(bug1))       # 打印的是bug1对象
print(bug1.search_bug('导出'))

print("="*30)
bug2 = Bugs()
print("bug2:{}".format(bug2))       # 打印的是bug2对象
print(bug2.search_bug('导出'))